.\"
.\" Copyright (c) 2012 Microsoft Corp.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.Dd September 10, 2013
.Dt HYPER-V 4
.Os
.Sh NAME
.Nm hv_vmbus
.Nd Hyper-V Virtual Machine Bus (VMBus) Driver
.Sh SYNOPSIS
To compile this driver into the kernel, place the following lines in
the system kernel configuration file:
.Bd -ragged -offset indent
.Cd "device hyperv"
.Cd "device pci"
.Ed
.Sh DESCRIPTION
The
.Nm
provides a high performance communication interface between
guest and root partitions in Hyper-V.
Hyper-V is a hypervisor-based virtualization technology from Microsoft.
Hyper-V supports isolation in terms of a partition.
A partition is a
logical unit of isolation, supported by the hypervisor, in which
operating systems execute.
.Pp
The Microsoft hypervisor must have at least one parent, or root,
partition, running Windows Server operating system.
The virtualization stack runs in the parent partition and has
direct access to the hardware devices.
The root partition then creates the child partitions which host
the guest operating systems.
.Pp
Child partitions do not have direct access to other hardware resources
and are presented
a virtual view of the resources, as virtual devices (VDevs).
Requests to the virtual devices are
redirected either via the VMBus or the hypervisor to the devices in
the parent partition, which handles the requests.
.Pp
The VMBus is a logical inter-partition communication channel.
The parent partition hosts Virtualization Service Providers (VSPs)
which communicate over the VMBus to handle device access requests from
child partitions.
Child partitions host Virtualization Service
Consumers (VSCs) which redirect device requests to VSPs in the parent
partition via the VMBus.
The Hyper-V VMBus driver defines and implements
the interface that facilitate high performance bi-directional communication
between the VSCs and VSPs.
All VSCs utilize the VMBus driver.
.Sh SEE ALSO
.Xr hv_netvsc 4 ,
.Xr hv_storvsc 4 ,
.Xr hv_utils 4
.Sh HISTORY
Support for
.Nm
first appeared in
.Fx 10.0 .
The driver was developed through a joint effort between Citrix Incorporated,
Microsoft Corporation, and Network Appliance Incorporated.
.Sh AUTHORS
.An -nosplit
.Fx
support for
.Nm
was first added by
.An Microsoft BSD Integration Services Team Aq Mt bsdic@microsoft.com .
